//#define _CRT_SECURE_NO_WARNINGS
//#include<stdio.h>
//
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	long long sum=1;
//	for (int i = 2; i <= n; i++) {
//		sum = sum * 2 + 1;
//	}
//	printf("%d", sum);
//	return 0;
//
//}
//#define _CRT_SECURE_NO_WARNINGS
//#include<stdio.h>
//
//int main()
//{
//	int n, k;
//	scanf("%d %d", &n, &k);
//	int arr[100];
//	int i = 0;
//	for (i = 0;i < n;i++)
//	{
//		scanf("%d", &arr[i]);
//
//	}
//	for (i = 0; i < n; i++) {
//		for (int j = i + 1; j < n; j++) {
//			if (abs(arr[i] - arr[j]) == k)
//			{
//				printf("Yes");
//				return 0;
//			}
//		}
//	}
//
//	printf("No");
//
//	return 0;
//
//}

//#define _CRT_SECURE_NO_WARNINGS
//#include<stdio.h>
//int main()
//{
//	int n;
//	scanf("%d", &n);
//	long long  arr[61] = {0,1,2,4};
//	for (int i = 4; i <= n; i++) {
//		arr[i] = arr[i - 1] + arr[i - 2] + arr[i - 3];
//	}
//	printf("%lld", arr[n]);
//	return 0;
//
//}
//#define _CRT_SECURE_NO_WARNINGS
//#include<stdio.h>
//int main()
//{
//	int n;
//	scanf("%d", &n);
//	long long  arr[61] = { 0,1,2,4 };
//	for (int i = 4; i <= n; i++) {
//		arr[i] = arr[i - 1] + arr[i - 2] + arr[i - 3];
//	}
//	printf("%lld", arr[n]);
//	return 0;
//
//}
#define _CRT_SECURE_NO_WARNINGS
//#include<stdio.h>
//int main()
//{
//	int t;
//	scanf("%d", &t);
//	while (t--)
//	{
//		long long  n;
//		scanf("%lld", &n);
//
//		long long sum = 3;
//		int count = 3;
//		while(sum<n){
//			sum *= 2;
//			count++;
//				
//		}
//		printf("%d\n", count);
//	}
//	return 0;
//
//}
//#include<stdio.h>
//#include<ctype.h>
//int main() {
//    char c;
//    while ((c = getchar()) != '\n')
//    {
//        if (isupper(c))
//        {
//            if (c == 'Z')
//                printf("a");
//            else
//                printf("%c", tolower(c + 1));
//        }
//        else if (islower(c)) {
//            if (c == 'z')
//                printf("A");
//            else
//                printf("%c", toupper(c + 1));
//        }
//        else
//            printf("%c", c);
//            
//    }
//
//    return 0;
//}
//#include<stdio.h>
//#include<ctype.h>
//int main() {
//    int n, m;
//    scanf("%d %d\n", &n, &m);
//    while (m--) {
//        char c;
//        int sum = 1 << n;
//        int zong = 1 << n;
//        while ((c = getchar()) != '\n') {
//            if (c == 'y')
//                sum = sum - zong / 2;
//            zong /= 2;
//        }
//        printf("%d\n", sum);
//    }
//    return 0;
//}
#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

int main()
{
	char a[10], b[10];
	int f1 = 0, f2 = 0;
	int sum1 = 0, sum2 = 0;
	char c;
	if ((c = getchar()) == ' ')
		scanf("%s", &b);
	else
		scanf("%s%s", &a, &b);
	sum1 = sum1 * 10 + c - '0';
	for (int i = 0; i < strlen(a); i++) {
		sum1 = sum1 * 10 + a[i] - '0';
		if (a[i] > '9' || a[i] < '0') {
			f1 = 1;
			break;
		}
	}
	for (int i = 0; i < strlen(b); i++) {
		sum2 = sum2 * 10 + b[i] - '0';
		if (b[i] > '9' || b[i] < '0') {
			f2 = 1;
			break;
		}
	}
	if (sum1 > 1000 || sum1 < 1) {
		f1 = 1;
	}
	if (sum2 > 1000 || sum2 < 1) {
		f2 = 1;
	}
	if (f1 && f2)
		printf("? + ? = ?");
	else if (f1)
		printf("? + %d = ?", sum2);
	else if (f2)
		printf("%d + ? = ?", sum1);
	else
		printf("%d + %d = %d", sum1, sum2, sum1 + sum2);
	return 0;
}
